{
 "cells": [
  {
   "cell_type": "code",
   "execution_count": 1,
   "metadata": {},
   "outputs": [],
   "source": [
    "import os\n",
    "# os.environ[\"CUDA_VISIBLE_DEVICES\"] = \"1\""
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 2,
   "metadata": {},
   "outputs": [
    {
     "name": "stderr",
     "output_type": "stream",
     "text": [
      "Using TensorFlow backend.\n",
      "f:\\anaconda\\envs\\py37\\lib\\site-packages\\tensorflow\\python\\framework\\dtypes.py:526: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.\n",
      "  _np_qint8 = np.dtype([(\"qint8\", np.int8, 1)])\n",
      "f:\\anaconda\\envs\\py37\\lib\\site-packages\\tensorflow\\python\\framework\\dtypes.py:527: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.\n",
      "  _np_quint8 = np.dtype([(\"quint8\", np.uint8, 1)])\n",
      "f:\\anaconda\\envs\\py37\\lib\\site-packages\\tensorflow\\python\\framework\\dtypes.py:528: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.\n",
      "  _np_qint16 = np.dtype([(\"qint16\", np.int16, 1)])\n",
      "f:\\anaconda\\envs\\py37\\lib\\site-packages\\tensorflow\\python\\framework\\dtypes.py:529: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.\n",
      "  _np_quint16 = np.dtype([(\"quint16\", np.uint16, 1)])\n",
      "f:\\anaconda\\envs\\py37\\lib\\site-packages\\tensorflow\\python\\framework\\dtypes.py:530: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.\n",
      "  _np_qint32 = np.dtype([(\"qint32\", np.int32, 1)])\n",
      "f:\\anaconda\\envs\\py37\\lib\\site-packages\\tensorflow\\python\\framework\\dtypes.py:535: FutureWarning: Passing (type, 1) or '1type' as a synonym of type is deprecated; in a future version of numpy, it will be understood as (type, (1,)) / '(1,)type'.\n",
      "  np_resource = np.dtype([(\"resource\", np.ubyte, 1)])\n"
     ]
    }
   ],
   "source": [
    "import numpy as np\n",
    "import pandas as pd\n",
    "from keras.utils import np_utils\n",
    "from keras.models import Sequential\n",
    "from keras.layers import Dense\n",
    "from keras.layers import Dropout\n",
    "\n",
    "\n",
    "import matplotlib.pyplot as plt\n",
    "import os"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 3,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "(1778030, 12) (1778030, 1) (508012, 12) (508012, 1) (254005, 12) (254005, 1)\n"
     ]
    }
   ],
   "source": [
    "x_train = np.load('E:/IDS/alldata/12/RUS+SMOTE/data.npy')\n",
    "y_train = np.load('E:/IDS/alldata/12/RUS+SMOTE/label_10.npy')\n",
    "\n",
    "x_test = np.load('E:/IDS/alldata/12/test/data.npy')\n",
    "y_test = np.load('E:/IDS/alldata/12/test/label_10.npy')\n",
    "\n",
    "x_val = np.load('E:/IDS/alldata/12/val/data.npy')\n",
    "y_val = np.load('E:/IDS/alldata/12/val/label_10.npy')\n",
    "\n",
    "print(x_train.shape,y_train.shape,x_test.shape,y_test.shape,x_val.shape,y_val.shape)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 4,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "Shape of data (BEFORE encode): (1778030, 1)\n",
      "Shape of data (AFTER  encode): (1778030, 10)\n",
      "\n",
      "Shape of data (BEFORE encode): (508012, 1)\n",
      "Shape of data (AFTER  encode): (508012, 10)\n",
      "\n",
      "Shape of data (BEFORE encode): (254005, 1)\n",
      "Shape of data (AFTER  encode): (254005, 10)\n",
      "\n"
     ]
    }
   ],
   "source": [
    "from keras.utils import to_categorical\n",
    "def encode(data):\n",
    "    print('Shape of data (BEFORE encode): %s' % str(data.shape)) \n",
    "    encoded = to_categorical(data)\n",
    "    print('Shape of data (AFTER  encode): %s\\n' % str(encoded.shape))  \n",
    "    return encoded\n",
    "\n",
    "y_train_onehot = encode(y_train)\n",
    "y_test_onehot = encode(y_test)\n",
    "y_val_onehot = encode(y_val)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 5,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "WARNING:tensorflow:From f:\\anaconda\\envs\\py37\\lib\\site-packages\\tensorflow\\python\\framework\\op_def_library.py:263: colocate_with (from tensorflow.python.framework.ops) is deprecated and will be removed in a future version.\n",
      "Instructions for updating:\n",
      "Colocations handled automatically by placer.\n",
      "_________________________________________________________________\n",
      "Layer (type)                 Output Shape              Param #   \n",
      "=================================================================\n",
      "dense_1 (Dense)              (None, 128)               1664      \n",
      "_________________________________________________________________\n",
      "dense_2 (Dense)              (None, 128)               16512     \n",
      "_________________________________________________________________\n",
      "dense_3 (Dense)              (None, 64)                8256      \n",
      "_________________________________________________________________\n",
      "dense_4 (Dense)              (None, 32)                2080      \n",
      "_________________________________________________________________\n",
      "dense_5 (Dense)              (None, 10)                330       \n",
      "=================================================================\n",
      "Total params: 28,842\n",
      "Trainable params: 28,842\n",
      "Non-trainable params: 0\n",
      "_________________________________________________________________\n",
      "None\n"
     ]
    }
   ],
   "source": [
    "from keras import regularizers \n",
    "\n",
    "model = Sequential()\n",
    "model.add(Dense(input_dim = 12,\n",
    "                units = 128,\n",
    "                activation = 'relu')) \n",
    "\n",
    "\n",
    "model.add(Dense(units = 128,activation = 'relu'))\n",
    "\n",
    "model.add(Dense(units = 64, activation = 'relu'))\n",
    "\n",
    "model.add(Dense(units = 32, activation = 'relu'))\n",
    "\n",
    "model.add(Dense(units = 10,activation = 'softmax'))\n",
    "\n",
    "print(model.summary())"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# train"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 6,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "WARNING:tensorflow:From f:\\anaconda\\envs\\py37\\lib\\site-packages\\tensorflow\\python\\ops\\math_ops.py:3066: to_int32 (from tensorflow.python.ops.math_ops) is deprecated and will be removed in a future version.\n",
      "Instructions for updating:\n",
      "Use tf.cast instead.\n",
      "Train on 1778030 samples, validate on 254005 samples\n",
      "Epoch 1/100\n",
      " - 8s - loss: 0.9007 - acc: 0.6461 - val_loss: 0.1359 - val_acc: 0.9601\n",
      "Epoch 2/100\n",
      " - 8s - loss: 0.7941 - acc: 0.6848 - val_loss: 0.1312 - val_acc: 0.9632\n",
      "Epoch 3/100\n",
      " - 8s - loss: 0.7705 - acc: 0.6926 - val_loss: 0.1375 - val_acc: 0.9607\n",
      "Epoch 4/100\n",
      " - 8s - loss: 0.7582 - acc: 0.6967 - val_loss: 0.1241 - val_acc: 0.9644\n",
      "Epoch 5/100\n",
      " - 8s - loss: 0.7438 - acc: 0.7013 - val_loss: 0.1271 - val_acc: 0.9638\n",
      "Epoch 6/100\n",
      " - 8s - loss: 0.7499 - acc: 0.6988 - val_loss: 0.1253 - val_acc: 0.9638\n",
      "Epoch 7/100\n",
      " - 8s - loss: 0.7404 - acc: 0.7019 - val_loss: 0.1219 - val_acc: 0.9646\n",
      "Epoch 8/100\n",
      " - 8s - loss: 0.7403 - acc: 0.7017 - val_loss: 0.1299 - val_acc: 0.9638\n",
      "Epoch 9/100\n",
      " - 8s - loss: 0.7281 - acc: 0.7057 - val_loss: 0.1249 - val_acc: 0.9648\n",
      "Epoch 10/100\n",
      " - 8s - loss: 0.7275 - acc: 0.7056 - val_loss: 0.1334 - val_acc: 0.9654\n",
      "Epoch 11/100\n",
      " - 8s - loss: 0.7263 - acc: 0.7057 - val_loss: 0.1304 - val_acc: 0.9635\n",
      "Epoch 12/100\n",
      " - 8s - loss: 0.7237 - acc: 0.7071 - val_loss: 0.1273 - val_acc: 0.9655\n",
      "Epoch 13/100\n",
      " - 8s - loss: 0.7152 - acc: 0.7107 - val_loss: 0.1278 - val_acc: 0.9654\n",
      "Epoch 14/100\n",
      " - 8s - loss: 0.7112 - acc: 0.7114 - val_loss: 0.1262 - val_acc: 0.9645\n",
      "Epoch 15/100\n",
      " - 8s - loss: 0.7146 - acc: 0.7100 - val_loss: 0.1285 - val_acc: 0.9628\n",
      "Epoch 16/100\n",
      " - 8s - loss: 0.7159 - acc: 0.7089 - val_loss: 0.1311 - val_acc: 0.9638\n",
      "Epoch 17/100\n",
      " - 8s - loss: 0.7083 - acc: 0.7109 - val_loss: 0.1575 - val_acc: 0.9594\n",
      "Epoch 18/100\n",
      " - 8s - loss: 0.7243 - acc: 0.7060 - val_loss: 0.1241 - val_acc: 0.9646\n",
      "Epoch 19/100\n",
      " - 8s - loss: 0.7158 - acc: 0.7083 - val_loss: 0.1294 - val_acc: 0.9641\n",
      "Epoch 20/100\n",
      " - 8s - loss: 0.7147 - acc: 0.7092 - val_loss: 0.1220 - val_acc: 0.9668\n",
      "Epoch 21/100\n",
      " - 8s - loss: 0.7160 - acc: 0.7096 - val_loss: 0.1267 - val_acc: 0.9655\n",
      "Epoch 22/100\n",
      " - 8s - loss: 0.7104 - acc: 0.7121 - val_loss: 0.1372 - val_acc: 0.9637\n",
      "Epoch 23/100\n",
      " - 8s - loss: 0.7089 - acc: 0.7125 - val_loss: 0.1235 - val_acc: 0.9679\n",
      "Epoch 24/100\n",
      " - 8s - loss: 0.7031 - acc: 0.7142 - val_loss: 0.1380 - val_acc: 0.9653\n",
      "Epoch 25/100\n",
      " - 8s - loss: 0.7064 - acc: 0.7130 - val_loss: 0.1284 - val_acc: 0.9666\n",
      "Epoch 26/100\n",
      " - 8s - loss: 0.7062 - acc: 0.7134 - val_loss: 0.1320 - val_acc: 0.9673\n",
      "Epoch 27/100\n",
      " - 8s - loss: 0.7076 - acc: 0.7137 - val_loss: 0.1324 - val_acc: 0.9666\n",
      "Epoch 28/100\n",
      " - 8s - loss: 0.7040 - acc: 0.7148 - val_loss: 0.1234 - val_acc: 0.9649\n",
      "Epoch 29/100\n",
      " - 8s - loss: 0.7013 - acc: 0.7154 - val_loss: 0.1251 - val_acc: 0.9659\n",
      "Epoch 30/100\n",
      " - 8s - loss: 0.7005 - acc: 0.7133 - val_loss: 0.1318 - val_acc: 0.9644\n",
      "Epoch 31/100\n",
      " - 8s - loss: 0.6921 - acc: 0.7172 - val_loss: 0.1259 - val_acc: 0.9659\n",
      "Epoch 32/100\n",
      " - 8s - loss: 0.6906 - acc: 0.7180 - val_loss: 0.1253 - val_acc: 0.9660\n",
      "Epoch 33/100\n",
      " - 8s - loss: 0.6959 - acc: 0.7145 - val_loss: 0.1246 - val_acc: 0.9643\n",
      "Epoch 34/100\n",
      " - 8s - loss: 0.6926 - acc: 0.7150 - val_loss: 0.1288 - val_acc: 0.9624\n",
      "Epoch 35/100\n",
      " - 8s - loss: 0.6902 - acc: 0.7159 - val_loss: 0.1282 - val_acc: 0.9644\n",
      "Epoch 36/100\n",
      " - 8s - loss: 0.6883 - acc: 0.7170 - val_loss: 0.1264 - val_acc: 0.9640\n",
      "Epoch 37/100\n",
      " - 8s - loss: 0.6899 - acc: 0.7171 - val_loss: 0.1277 - val_acc: 0.9647\n",
      "Epoch 38/100\n",
      " - 8s - loss: 0.6896 - acc: 0.7169 - val_loss: 0.1341 - val_acc: 0.9642\n",
      "Epoch 39/100\n",
      " - 8s - loss: 0.6880 - acc: 0.7173 - val_loss: 0.1263 - val_acc: 0.9643\n",
      "Epoch 40/100\n",
      " - 8s - loss: 0.6859 - acc: 0.7182 - val_loss: 0.1268 - val_acc: 0.9627\n",
      "Epoch 41/100\n",
      " - 8s - loss: 0.6921 - acc: 0.7172 - val_loss: 0.1262 - val_acc: 0.9643\n",
      "Epoch 42/100\n",
      " - 8s - loss: 0.6878 - acc: 0.7193 - val_loss: 0.1291 - val_acc: 0.9645\n",
      "Epoch 43/100\n",
      " - 8s - loss: 0.6875 - acc: 0.7196 - val_loss: 0.1377 - val_acc: 0.9663\n",
      "Epoch 44/100\n",
      " - 8s - loss: 0.6884 - acc: 0.7199 - val_loss: 0.1263 - val_acc: 0.9663\n",
      "Epoch 45/100\n",
      " - 8s - loss: 0.6867 - acc: 0.7201 - val_loss: 0.1373 - val_acc: 0.9625\n",
      "Epoch 46/100\n",
      " - 8s - loss: 0.6839 - acc: 0.7207 - val_loss: 0.1497 - val_acc: 0.9642\n",
      "Epoch 47/100\n",
      " - 8s - loss: 0.6843 - acc: 0.7207 - val_loss: 0.1289 - val_acc: 0.9666\n",
      "Epoch 48/100\n",
      " - 8s - loss: 0.6867 - acc: 0.7205 - val_loss: 0.1271 - val_acc: 0.9664\n",
      "Epoch 49/100\n",
      " - 8s - loss: 0.6799 - acc: 0.7217 - val_loss: 0.1490 - val_acc: 0.9643\n",
      "Epoch 50/100\n",
      " - 8s - loss: 0.6797 - acc: 0.7221 - val_loss: 0.1314 - val_acc: 0.9656\n",
      "Epoch 51/100\n",
      " - 8s - loss: 0.6815 - acc: 0.7214 - val_loss: 0.1264 - val_acc: 0.9658\n",
      "Epoch 52/100\n",
      " - 8s - loss: 0.6791 - acc: 0.7222 - val_loss: 0.1283 - val_acc: 0.9653\n",
      "Epoch 53/100\n",
      " - 8s - loss: 0.6734 - acc: 0.7242 - val_loss: 0.1313 - val_acc: 0.9656\n",
      "train_time: 431.3923547267914\n"
     ]
    }
   ],
   "source": [
    "import keras\n",
    "\n",
    "import time\n",
    "time_start = time.time()\n",
    "\n",
    "callback_list = [keras.callbacks.EarlyStopping(monitor='val_acc',patience=30,),  \n",
    "                keras.callbacks.ModelCheckpoint(filepath='my_model.h5',monitor='val_acc',save_best_only=True,)]\n",
    "\n",
    "model.compile(loss = \"categorical_crossentropy\",optimizer = \"nadam\", metrics = [\"accuracy\"])\n",
    "history = model.fit(x = x_train,y = y_train_onehot,\n",
    "                epochs = 100,\n",
    "                batch_size = 256,\n",
    "                verbose = 2,\n",
    "                callbacks=callback_list,\n",
    "                validation_data=(x_val, y_val_onehot) )\n",
    "\n",
    "time_end = time.time()\n",
    "train_time = time_end - time_start\n",
    "print(\"train_time:\",train_time)"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 7,
   "metadata": {},
   "outputs": [],
   "source": [
    "model.save('E:/IDS/alldata/12/RUS+SMOTE/MLP_RUS_10.h5')"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# TEST"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 10,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "508012/508012 [==============================] - 4s 7us/step\n",
      "test_loss =  0.1321668957872958 test_accuracy =  0.9651484610604443\n"
     ]
    }
   ],
   "source": [
    "\n",
    "scores = model.evaluate(x_test, y_test_onehot)\n",
    "print(\"test_loss = \", scores[0],\"test_accuracy = \", scores[1])"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 11,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "test_time: 2.7548773288726807\n"
     ]
    }
   ],
   "source": [
    "import time\n",
    "time_start = time.time()\n",
    "\n",
    "y_pred_onehot  = model.predict(x_test)  #返回的是在类别上的概率分布。It returns the probability distribution on the category\n",
    "y_pred_label=np.argmax(y_pred_onehot,axis=1)#概率最大的类别就是预测类别。The category with the highest probability is the prediction category\n",
    "\n",
    "time_end = time.time()\n",
    "test_time = time_end - time_start\n",
    "print(\"test_time:\",test_time)\n",
    "\n",
    "np.savetxt(\"E:/IDS/alldata/12/RUS+SMOTE/MLP_y_pred_10.txt\",y_pred_label)  \n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 12,
   "metadata": {},
   "outputs": [],
   "source": [
    "y_true_onehot=y_test_onehot\n",
    "y_true_label=np.argmax(y_true_onehot,axis=1)\n",
    "np.savetxt(\"E:/IDS/alldata/12/RUS+SMOTE/MLP_y_true_10.txt\",y_true_label) "
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 13,
   "metadata": {},
   "outputs": [
    {
     "data": {
      "image/png": "iVBORw0KGgoAAAANSUhEUgAAA3gAAAMlCAYAAAAhflFnAAAABHNCSVQICAgIfAhkiAAAAAlwSFlzAAAPYQAAD2EBqD+naQAAADh0RVh0U29mdHdhcmUAbWF0cGxvdGxpYiB2ZXJzaW9uMy4xLjEsIGh0dHA6Ly9tYXRwbG90bGliLm9yZy8QZhcZAAAgAElEQVR4nOzdd5wU9f3H8dfnbu/oSFGk2VFAxK7YQRQUsP5ix25iEhMNscUWo8HeW4wauxFLNGoERBDFrthFFI0FDRxFQXq7vf38/vjOHXvLwd1e273d9/Px2Ae3M9+Z+XxnZpf57Pc73zF3R0RERERERJq+gkwHICIiIiIiIvVDCZ6IiIiIiEiOUIInIiIiIiKSI5TgiYiIiIiI5AgleCIiIiIiIjlCCZ6IiIiIiEiOUIInIiIiIiKSI5TgiYiIiIiI5IhYpgMQERERERFJZWbNgeJMx5FilbuvyHQQ62LunukYREREREREKphZc2ItlxNflulQUs0GNsvmJE8teCIiIiIikm2KiS+j2dYnQWGWNOKVrWLl5w91JrQqKsETERERERFJS2ExliUJXlPp96gET0REREREspMVhFc2yJY4qtE0ohQREREREZFqKcETERERERHJEeqiKSIiIiIi2ckAs0xHEWRJGNVRC56IiIiIiEiOUIInIiIiIiKSI9RFU0REREREspNG0Uxb04hSREREREREqqUET0REREREJEeoi6aIiIiIiGQnsywaRTNL4qiGWvBERERERERyhFrwREREREQkO2mQlbQ1jShFRERERESkWkrwREREREREcoS6aIqIiIiISHbSICtpUwueiIiIiIhIjlCCJyIiIiIikiPURVNERERERLJUFo2i2UTaxppGlCIiIiIiIlItJXgiIiIiIiI5Ql00RUREREQkO2kUzbSpBU9ERERERCRHKMETERERERHJEeqiKSIiIiIi2cmyaBTNbImjGk0jShEREREREamWEjwREREREZEcoS6aIiIiIiKSnTSKZtrUgiciIiIiIpIj1IInIiIiIiLZSYOspK1pRCkiIiIiIiLVUoInIiIiIiKSI9RFU0REREREspMGWUmbWvBERERERERyhBI8ERERERGRHKEumiIiIiIikp00imbamkaUIiIiIiIiUi0leCIiIiIiIjlCXTRFRERERCQ7mWVP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k6qY9iBJ9/y5+0fALimreyr5jbs3jTNaRERERCSPqQVPREREREQkR6gFT0REREREspKZYdnSNTJb4qiGWvBERERERERyhBI8ERERERGRHKEumiIiIiIikpXURTN9asETERERERHJEUrwREREREREcoS6aIqIiIiISHYyUp7onEHZEkc11IInIiIiIiKSI5TgiYiIiIiI5Ah10RQRERERkaykUTTTpxY8ERERERGRHKEET0REREREJEeoi6aIiIiIiGQlddFMn1rwREREREREcoRa8EREREREJCupBS99asETERERERHJEUrwREREREREcoS6aIqIiIiISFZSF830qQVPREREREQkRyjBExERERERyRHqoikiIiIiItnJolc2yJY4qqEWPBERERERkRyhFjxpUC2KC7BYYabDaDTNi0Nd4/HSDEfSuMrrq3rnB9Vb9c4HqrfqnQ/yrb75wtw90zFIDjKztsDCUaNG0bJly0yHIyIiIiIpli1bxnHHHQewnrsvynQ8ycqvJdseeQ9W1CLT4QDgpctZ9K/TIQv3VzK14EmD6j9wMG3bts10GI0mHi/l1ZcnsKLrtlCQPy2XJMpoXvIpczr0xvOo3pYoY8P5X7D+Vv0oKMyfr9NEWZyfvnqXfnvvRyyWP/WOx+O8+/pE+g8cRCxWlOlwGk3595rqnR9U7/yq9/z58zIdgjSA/PmfWTIiVlRErCh/vigrFBTmV4IX8YLCvErwyhUUxvIqwSsXi8Xy6kKoXCyWn99rqnd+Ub3zQz5+h+eD/LsiERERERGRJsGMLHrQeaYDqBmNoikiIiIiIpIjlOCJiIiIiIjkCHXRFBERERGRrGRY9nTRbCJ9NNWCJyIiIiIikiOU4ImIiIiIiOQIddEUEREREZGsZJZFXTSzJY5qqAVPREREREQkR6gFT0REREREspORPWObZEsc1VALnoiIiIiISI5QgiciIiIiIpIj1EVTRERERESyUxYNsuJZEkd11IInIiIiIiLSAMzsDDP7zsxWmNkHZrZ3NeVHmNmXZrbczP5nZjebWfN0tqkET0REREREpJ6Z2dHALcCVwA7A68ALZrbxWsoPB64BLgd6A6cBRwNXp7NdddEUEREREZGslE3PwatFHGcD97n7vdH7EWZ2APBb4MIqyu8OvOnuo6L3083sMWDXdDaqFjwREREREZGaa2Nm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RyjBExERERERyRHqoikiIiIiIllJo2imTy14IiIiIiIiOUIJnoiIiIiISI5QF01pUPHSUuKlpZkOo9HE46GuibJ4hiNpXOX1jZHIcCSNq7y++Xq8y8/3fFFeX9U7P6yud359vsvrm7/1zs/zPJtpFM30mbtnOgbJQWbWFlg4atQoWrZsmelwRERERCTFsmXLOO644wDWc/dFmY4nWfm15E6XjqGweatMhwNA2YqlfPDXYZCF+yuZWvCkQfUfOJi2bdtmOoxGE4+X8urLE9i4754UFObPxytRFueHKW+ytEtfKCjMdDiNJ1FGq1lTKNhkByyP6u2JMhLff8S2uw6gMJY/53lZPM6nkyex2z77Ecujesfjcd55bSL9Bw4iFivKdDiNpvz7fO8B++ddvV+f9BJ7Dtg/787zNye99P/s3Xd8W9X9//HXR7oecWxDEhJiO+yQkEkgTu5baQAAIABJREFUgxFGCJmE3ZYRNoVSKCPsll/5fmkp8KXsTUspe3aX7MkeGeyEUSgrtpOQQRLH8bjS+f0h2ZFlJx6xLcl6P3ncB9E9V9Lno3N0peNzdC6HHZFe9b127ZpEh9C4JFpkhWSJoxHp886VhPAyMvAy0udEWSMQ9NKqg1crEEyvDl6UBYJYIP3qO+h5adXBq+F5Xlp9Aazheel5Pk/fvNXO00E61nE60CIrIiIiIiIiHUT6/elVRERERERSghZZaT6N4ImIiIiIiHQQ6uCJiIiIiIh0EJqiKSIiIiIiScmSaBXNZImjMRrBExERERER6SDUwRMREREREekgNEVTRERERESSklbRbD6N4ImIiIiIiHQQ6uCJiIiIiIh0EJqiKSIiIiIiSUmraDafRvBEREREREQ6CHXwREREREREOghN0RQRERERkaSkVTSbTyN4IiIiIiIiHYQ6eCIiIiIiIh2EpmiKiIiIiEhS0hTN5tMInoiIiIiISAehETwREREREUlKug5e82kET0REREREpINQB09ERERERKSD0BRNERERERFJSlpkpfk0giciIiIiItJBqIMnkiLy5s6gz+H70efQIXR57vF65YX/7wr6DdmDvY46rM7+zm+8Qu8JI+k97iB2n3wcwXVr2yni1lH46lyOPvFwjjn+UPb6x3P1yo/82UlMPGUcR/3kSAb+8e6Y/T9h0omjmHjqeCaeOr49Q24VPV6ZzeHH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NlN+NXB1o8kTEspvBG5stMyERvPUENy7d+smtrGS4OsgRERERESkg0jVFjwRERERERFpoaS24ImIiIiIiGyKWep821GqxNEcteCJiIiIiIikCbXgiYiIiIhISjJImYebpEYUzVMLnoiIiIiISJpQBU9ERERERCRNqIumiIiIiIikpJAFQypIlTiaoxY8ERERERGRNKEKnoiIiIiISJpQF00REREREUlJFv9JBakSR3PUgiciIiIiIpImVMETERERERFJE+qiKSIiIiIiKcksGFJBqsTRHLXgiYiIiIiIpAlV8ERERERERNKEumiKiIiIiEhKsviQClIljuaoBU9ERERERCRNqIInIiIiIiKSJtRFU0REREREUlIII5Qij68MdZBOmmrBExERERERSROq4ImIiIiIiKQJddEUEREREZGUpKdotpxa8ERERERERNKEWvCkTcWiUWLRaLLDaDexWDT+O5bkSNpXbb7VGZZ3bb6Zur9rj/dMUf/+Vt6ZoDbf3Ay7UqrNN1P3d6bmndLUhNdi5u7JjkHSkJkVAt9OnDiRvLy8ZIcjIiIiIo2Ul5czbtw4gO3cfV2y40lUey054+3Pye9cmOxwAFhfuo7jDtwVUvD1SpRhn0tJezvqmBEUFqbGm7I9xGJRXnrxBY46ZjiRSFayw2k3tXkfcfRxGZf3K7NncNjRxxGJZM7pNBaL8VoG573XgUcQDmdO3tXVMZa+/YrOaxmi9rx29YwoldXJjqb95IThzuOyGHpUZp3X1q5Zk+wQpA1kzhEsSRHJyiKSlTn/GGtFIso7k0QikYy6AKyVqXmHwxHCGXQBWCtz39+ZmXdlNVRkVu9zIPPOax3hXGbxn1SQKnE0Rw9ZdhajNAAAIABJREFUERERERERSROq4ImIiIiIiKSJ1G+XFRERERGRzGRgqdIzMlXiaIZa8ERERERERNKEKngiIiIiIiJpQl00RUREREQkJel7zltOLXgiIiIiIiJpQhU8ERERERGRNKEumiIiIiIikprUR7PF1IInIiIiIiKSJlTBExERERERSRPqoikiIiIiIinJ4j+pIFXiaI5a8ERERERERNKEKngiIiIiIiJpQl00RUREREQkJZkFQypIlTiaoxY8ERERERGRNKEWPBERERERSUn6GryWUwueiIiIiIhImlAFT0REREREJE2oi6aIiIiIiKQm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ikWjxKLRZIfRbmKxaIPfmUJ5x5IcSfuqzTdT866uzqy8a/PN3Pd3ZuadE05yIO2sNt9MO69VZ1i+mcLcPdkxSBoys0Lg24kTJ5KXl5fscERERESkkfLycsaNGwewnbuvS3Y8iWqvJed/tIKCzoXJDgeAstJ1DNqnJ6Tg65VILXjSpo46ZgSFhanxpmwPsViUl158gaOOGU4kkpXscNqN8s7MvHN2OwgLZc7H/F5TTeVnCzj0qOOIRDLn32csFuONl2Zk7HHed9BRhDNof1fHYiye/1LG7u8nVu9EzDPnDiavKE12CNIGMueMJUkRycoikpU5/yBqRSLKO5Nkat4WCmPhzPs3EolEMurCt1amHufhSCSjKni1MnV/xzxENIMqeHjHeGiItEzmnbFERERERKRD0Pect1wGfUQhIiIiIiKS3lTBExERERERSRPqoikiIiIiIqlJfTRbTC14IiIiIiIiaUIVPBERERERkTShLpoiIiIiIpKSLP6TClIljuaoBU9ERERERCRNqIInIiIiIiKSJtRFU0REREREUpOBpUrPyFSJoxlqwRMREREREUkTasETEREREZGUpK/Bazm14ImIiIiIiKQJVfBERERERETShLpoioiIiIhIalIfzRZTC56IiIiIiEiaUAVPREREREQkTaiLpoiIiIiIpCSL/6SCVImjOWrBExERERERSROq4ImIiIiIiKQJddEUEREREZGUZBYMqSBV4miOWvBERERERETShCp4IiIiIiIiaUJdNEVEJGV0nz2d3nfdADU1fPaji1l+yll1ZaEN5ex/2Y/IW/Y5Ho7wxann8MWZ5wPQ9fXZ7HP3LwnFYqweejQfXntzkjLYOpGpk8m59iqoqaHqiquInnd+g/LQvLl0uuBHWGUlVWeeTdX1Pwcg97yzCS9aCDU1VA89jIoJ90FIn92muk7PT6XLL66FmhrWXXIFZWef16C869Xjyfv3v4gV78zKma/VTd/u17+i4B9/wzZsYNlHy9o7bNlKg959hR/8vwmYO0+POocZR5zcoPzP146lPDcfN2PN9jtwy6X3AHDrHT+mU8V6ALp+8xUvHzyKB06/ot3jTzZ9z3nLqYKXJGb2E+AuoIu7x+LTCoC1wJvufkTCvEcALwO93f2jZMQrItLWLBaj952/YP7fnyZW0JlDTjmWVccdT2z7LnXzfPaji1k7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YjEzs+7lBM/MzHJ4gzSbV+8Y4MfAcsA9kjYnNXw+Gfg48C1gF+BAAEmDgEuAScAawB7Az6f1SSUtAtwETAA2AlYDziCtaDkOuJA027hw9XaLpPcDI4BXgfWAdarHV0uatfrQ+wC7ArtVx+cFth7QdwTmAq4ENgFWAa4BLpe0eMN5+wL3AKsCPwNOrCW21eznFcBCwGerr+8u4HpJ8w4wHjMz60JeomlmZm0l6dPAl4HrGw4dHBHX1Z13IHB0RJxdDT0q6SBSIngYKRFaDlgiIp6u3ucA4KppfPo9gZeBHSJiYjX2UN3nfAOYLSKerRv7CvAOsHtERDX2dWAcsAFwLfAD4GcRcXF1fA9g8xn6hlQi4t/Av+uGfiJpa+B/gFPrxv8eEUfXYpe0NrAXcB2wIfAJYIGIeLM654dV0Zltgd8MJCYzM+s+TvDMzKwdPifpVdLrzizAcOB7Defc0fB8NeBTVaJXMxiYvZpVWw54spbcVW6dThwrAzfXJXczYjVgaeCVNEE22ezAUpKGkmb7Jn/uiHi7Wm46w8s0q6IzhwCfAz5E+l7NATTO4DV+jbeSEsxarHMBLzTEOgew1IzGYmZm3csJnpmZtcMIUkGVicDofhKs1xqeDyIlPJc0OXcCzZOnmE4cb0zneDODgDuBnZoce/5dfLz+HEua9fshMIoU60XArNN6p0rt6x4EjCHNLDYaUEsGMzPrTk7wzMysHV6LiFEDfJ+7gGX7ez9JI4HFJX0oIkZXw2tO52PeA3xN0iz9JJlvkWYJG+PYHnguIsb3E8sY0j7Am6rn76Nv/9uMWhc4KyIurT7GXMASTc5bo8nz/9TFuhDwdkQ8PoDPbWZmhXCRFTMz61SHAztXjbmXl7ScpO0lHVkd/wvwIDBM0kqS1gV+Op2PeSowBPiDpE9WVTi/KmnZ6vjjwIqSlpU0v6RZSBU//wsMl7SupCUlrS/pJEmLVu93ErC/pK0lfQz4FTDPAL/eUcA2klauql7+nuav02tL2k/SMpL2BL5Uff7a9+RW4E9VVdIlJK0l6UhJnxxgPGZm1oWc4JmZWUeKiGtI+9E2Bf4J3AbsDTxRHX+HVKlyNuB2Um+9A5t+sL6P+QKpeuZcwI2kpZffIC0dBfgtKWm8g7T8cu2IeJ1UPfNJ0nLRB0iVN+cAajN6xwPDgLNICdYrwKUD/JL3Al4CbgEuJ1XRbDYDeDxpdvBu4CBgn+p7RVUE5rOkmcQzSAVk/kCaCRw7wHjMzKwLqSoIZmZmZmZmZl3OM3hmZmZmZmaFcIJnZmZmZmZWCCd4ZmZmZmZmhXCCZ2ZmZmZmVggneGZmZmZmZoVwgmdmZmZmZlYIJ3hmZmZmZmaFcIJnZmZmZmZWCCd4ZmZmZmZmhXCCZ2ZmZmZmVggneGZmZmZmZoVwgmdmZmZmZlaI/wfbJC23JmRVUAAAAABJRU5ErkJggg==\n",
      "text/plain": [
       "<Figure size 1000x1000 with 2 Axes>"
      ]
     },
     "metadata": {
      "needs_background": "light"
     },
     "output_type": "display_data"
    }
   ],
   "source": [
    "# -*-coding:utf-8-*-\n",
    "from sklearn.metrics import confusion_matrix\n",
    "import matplotlib.pyplot as plt\n",
    "import numpy as np\n",
    "\n",
    "labels = ['Normal','Analysis','Backdoor','DoS','Exploits','Fuzzers','Generic','Reconnaissance','Shellcode','Worms']\n",
    "          \n",
    "y_true = y_true_label\n",
    "y_pred  = y_pred_label \n",
    "\n",
    "\n",
    "tick_marks = np.array(range(len(labels))) + 0.5\n",
    "\n",
    "def plot_confusion_matrix(cm, title='Confusion Matrix', cmap=plt.cm.binary):\n",
    "    plt.imshow(cm, interpolation='nearest', cmap=plt.cm.Blues) \n",
    "    plt.title(title)\n",
    "    plt.colorbar()\n",
    "    xlocations = np.array(range(len(labels)))\n",
    "    plt.xticks(xlocations, labels, rotation=90)\n",
    "    plt.yticks(xlocations, labels)\n",
    "    plt.ylabel('True label')\n",
    "    plt.xlabel('Predicted label')\n",
    "\n",
    "\n",
    "cm = confusion_matrix(y_true, y_pred)  \n",
    "np.set_printoptions(precision=2)  \n",
    "cm_normalized = cm.astype('float') / cm.sum(axis=1)[:, np.newaxis] \n",
    "\n",
    "plt.figure(figsize=(10, 10), dpi=100)\n",
    "\n",
    "ind_array = np.arange(len(labels))\n",
    "x, y = np.meshgrid(ind_array, ind_array)\n",
    "\n",
    "for x_val, y_val in zip(x.flatten(), y.flatten()):\n",
    "    c = cm_normalized[y_val][x_val]\n",
    "    if c > 0.001:\n",
    "        plt.text(x_val, y_val, \"%0.2f\" % (c,), color='red', fontsize=7, va='center', ha='center')\n",
    "# offset the tick\n",
    "plt.gca().set_xticks(tick_marks, minor=True)\n",
    "plt.gca().set_yticks(tick_marks, minor=True)\n",
    "plt.gca().xaxis.set_ticks_position('none')\n",
    "plt.gca().yaxis.set_ticks_position('none')\n",
    "plt.grid(True, which='minor', linestyle='-')\n",
    "plt.gcf().subplots_adjust(bottom=0.15)\n",
    "\n",
    "plot_confusion_matrix(cm_normalized, title='MLP_12_10_ROS Normalized confusion matrix')  \n",
    "#plt.savefig('/home/hll/IDS/alldata/cm/confusion_matrix.png', format='png')  \n",
    "plt.show()\n"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 14,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "[[436888    334    539    329    551   3783      5     70    932    324]\n",
      " [     0    180    207    124     22      2      0      0      0      0]\n",
      " [     0     90    248     96      7      6      1     10      8      0]\n",
      " [     3    597   1134    986    310    113      4     37     68     17]\n",
      " [     4    835   1687   1306   4019    386     56    376    163     74]\n",
      " [     1    113    349    157    138   3312      0     47    629    103]\n",
      " [     2     91    173    201    250    162  42122     14     52     30]\n",
      " [     0     92    193    129     42     22      2   2295     19      3]\n",
      " [     0      0      3      5      5     43      0      3    237      7]\n",
      " [     0      0      0      0     10      1      0      4      0     20]]\n"
     ]
    }
   ],
   "source": [
    "print(cm)  "
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# multi-class evaluation indicators"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 15,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "                precision    recall  f1-score   support\n",
      "\n",
      "        Normal       1.00      0.98      0.99    443755\n",
      "      Analysis       0.08      0.34      0.13       535\n",
      "      Backdoor       0.05      0.53      0.10       466\n",
      "           DoS       0.30      0.30      0.30      3269\n",
      "      Exploits       0.75      0.45      0.56      8906\n",
      "       Fuzzers       0.42      0.68      0.52      4849\n",
      "       Generic       1.00      0.98      0.99     43097\n",
      "Reconnaissance       0.80      0.82      0.81      2797\n",
      "     Shellcode       0.11      0.78      0.20       303\n",
      "         Worms       0.03      0.57      0.07        35\n",
      "\n",
      "      accuracy                           0.97    508012\n",
      "     macro avg       0.46      0.64      0.47    508012\n",
      "  weighted avg       0.98      0.97      0.97    508012\n",
      "\n"
     ]
    }
   ],
   "source": [
    "from sklearn import metrics\n",
    "from sklearn.metrics import classification_report\n",
    "\n",
    "target_names = ['Normal','Analysis','Backdoor','DoS','Exploits','Fuzzers','Generic','Reconnaissance','Shellcode','Worms']\n",
    "print(classification_report(y_true,y_pred,target_names=target_names))"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": 16,
   "metadata": {},
   "outputs": [
    {
     "name": "stdout",
     "output_type": "stream",
     "text": [
      "acc: 0.965148461059975\n",
      "pre: 0.981916760828667\n",
      "DR=recall: 0.965148461059975\n",
      "f1: 0.9720948109874137\n"
     ]
    }
   ],
   "source": [
    "acc = metrics.accuracy_score(y_true,y_pred) \n",
    "f1 = metrics.f1_score(y_true, y_pred,average='weighted')\n",
    "pre = metrics.precision_score(y_true, y_pred, labels=None, pos_label=1, average='weighted')  #DR\n",
    "recall = metrics.recall_score(y_true, y_pred, labels=None, pos_label=1, average='weighted', sample_weight=None)\n",
    "\n",
    "\n",
    "print(\"acc:\",acc)\n",
    "print(\"pre:\",pre)\n",
    "print(\"DR=recall:\",recall)\n",
    "print(\"f1:\",f1)\n"
   ]
  },
  {
   "cell_type": "markdown",
   "metadata": {},
   "source": [
    "# # binary-class evaluation indicators"
   ]
  },
  {
   "cell_type": "code",
   "execution_count": null,
   "metadata": {},
   "outputs": [],
   "source": [
    "TP=cm[1,1]\n",
    "FP=cm[0,1]\n",
    "FN=cm[1,0]\n",
    "TN=cm[0,0]\n",
    "\n",
    "acc = (TP+TN)/(TP+TN+FP+FN)\n",
    "print(\"acc:\",acc)\n",
    "\n",
    "DR = TP/(TP+FN)  \n",
    "print(\"DR:\",DR)\n",
    "\n",
    "FPR = FP/(FP+TN)  #FAR\n",
    "print(\"FPR:\",FPR)\n",
    "\n",
    "recall =TP/(TP+FN)\n",
    "print(\"recall：\",recall)  \n",
    "\n",
    "precision = TP/(TP+FP)\n",
    "print(\"precision:\",precision)\n",
    "\n",
    "f1 = (2*precision*recall)/(precision+recall)\n",
    "print(\"f1:\",f1)"
   ]
  }
 ],
 "metadata": {
  "kernelspec": {
   "display_name": "Python 3",
   "language": "python",
   "name": "python3"
  },
  "language_info": {
   "codemirror_mode": {
    "name": "ipython",
    "version": 3
   },
   "file_extension": ".py",
   "mimetype": "text/x-python",
   "name": "python",
   "nbconvert_exporter": "python",
   "pygments_lexer": "ipython3",
   "version": "3.6.9"
  }
 },
 "nbformat": 4,
 "nbformat_minor": 2
}
